package com.qikecn.utils;

import com.alipay.api.internal.util.StringUtils;
import com.jfinal.weixin.sdk.api.ApiResult;
import com.jfinal.weixin.sdk.api.TemplateData;
import com.jfinal.weixin.sdk.api.TemplateMsgApi;

public class WXMsgUtil {

	/**
	 * 充值宝豆到账提醒
	 * @param touser 用户openid
	 * @param score 到账宝豆数
	 * @param datetime 到账时间
	 */
	public static void sendTemplateMsgOfCzdz(String touser, int score, String datetime) {
		if(StringUtils.isEmpty(touser)) {
			return;
		}
		// 模板消息，发送测试：pass
		ApiResult result = TemplateMsgApi.send(TemplateData.New()
			// 消息接收者
			.setTouser(touser)
			// 模板id
			.setTemplate_id("_Y4BQdqEUjgolEnG-j_T8Lob73-aDeGR5m4ipGvfsH0")
			.setUrl("")
			// 模板参数
			.add("first", "您好，您已成功充值到账！\n", "#999")
			.add("keyword1", "我的宝豆", "#999")
			.add("keyword2", score + "宝豆", "#ff0000")
			.add("keyword3", "微信充值", "#999")
			.add("keyword4", datetime, "#999")
			.add("remark", "\n感谢您的使用。", "#999")
			.build());
		System.out.println(result);
	}
	
	/**
	 * 待审核提醒
	 * @param touser
	 * @param username
	 */
	public static void sendTemplateMsgOfDshtx(String touser, String first, String keyword1, String keyword2) {
		if(StringUtils.isEmpty(touser)) {
			return;
		}
		// 模板消息，发送测试：pass
		ApiResult result = TemplateMsgApi.send(TemplateData.New()
			// 消息接收者
			.setTouser(touser)
			// 模板id
			.setTemplate_id("dGPg533FlimJBxly77zsSfjvk7O94QjkSNYgPekZ9hw")
			.setUrl("")
			// 模板参数
			.add("first", first, "#999")
			.add("keyword1", keyword1, "#999")
			.add("keyword2", keyword2, "#999")
			.add("remark", "\n感谢您的使用。", "#999")
			.build());
		System.out.println(result);
	}
	
	/**
	 * 家长注册加入班级时发给老师的申请审核提醒
	 * @param touser 通知的openid
	 * @param username 申请人姓名
	 */
	public static void sendTemplateMsgOfSqsh(String touser, String username) {
		if(StringUtils.isEmpty(touser)) {
			return;
		}
		// 模板消息，发送测试：pass
		ApiResult result = TemplateMsgApi.send(TemplateData.New()
			// 消息接收者
			.setTouser(touser)
			// 模板id
			.setTemplate_id("dGPg533FlimJBxly77zsSfjvk7O94QjkSNYgPekZ9hw")
			.setUrl("")
			// 模板参数
			.add("first", "您有新的家长申请需要审核，请尽快处理！\n", "#999")
			.add("keyword1", "家长申请加入班级", "#999")
			.add("keyword2", username, "#999")
			.add("remark", "\n感谢您的使用。", "#999")
			.build());
		System.out.println(result);
	}
	
	/**
	 * 学校注册提醒发给管理员审核
	 * @param touser 通知的openid
	 * @param username 申请的学校名称
	 */
	public static void sendTemplateMsgOfSqshToAdmin(String touser, String school_name) {
		if(StringUtils.isEmpty(touser)) {
			return;
		}
		// 模板消息，发送测试：pass
		ApiResult result = TemplateMsgApi.send(TemplateData.New()
			// 消息接收者
			.setTouser(touser)
			// 模板id
			.setTemplate_id("dGPg533FlimJBxly77zsSfjvk7O94QjkSNYgPekZ9hw")
			.setUrl("")
			// 模板参数
			.add("first", "您有新的学校申请需要审核，请尽快处理！\n", "#999")
			.add("keyword1", "学校申请加入平台", "#999")
			.add("keyword2", school_name, "#999")
			.add("remark", "\n感谢您的使用。", "#999")
			.build());
		System.out.println(result);
	}
	
	/**
	 * 申请审核结果通知
	 * @param touser 通知的openid
	 * @param jieguo 审核结果：审核通过、审核不通过
	 * @param remark 通过是欢迎语，不通过是原因
	 * @param datetime 审核时间
	 */
	public static void sendTemplateMsgOfSqjg(String touser, String jieguo, String remark, String datetime) {
		if(StringUtils.isEmpty(touser)) {
			return;
		}
		// 模板消息，发送测试：pass
		ApiResult result = TemplateMsgApi.send(TemplateData.New()
			// 消息接收者
			.setTouser(touser)
			// 模板id
			.setTemplate_id("JUoVOObazv90bu5J76mtttBIikqtcZsvqDSoyXnogRI")
			.setUrl("")
			// 模板参数
			.add("first", "您的申请已处理！\n", "#999")
			.add("keyword1", jieguo, "#ff0000")
			.add("keyword2", datetime, "#999")
			.add("remark", "\n"+remark, "#999")
			.build());
		System.out.println(result);
	}
	
	/**
	 * 新工单提醒
	 * @param touser
	 * @param jieguo
	 * @param remark
	 * @param datetime
	 */
	public static void sendTemplateMsgOfNewGD(String touser, String orderid, String username, String phone, String money) {
		if(StringUtils.isEmpty(touser)) {
			return;
		}
		// 模板消息，发送测试：pass
		ApiResult result = TemplateMsgApi.send(TemplateData.New()
			// 消息接收者
			.setTouser(touser)
			// 模板id
			.setTemplate_id("M6boRtmu93kzHU3EtNmEJVLLFIpU4-Mj7P3_wbfTIlY")
			.setUrl("")
			// 模板参数
			.add("first", "您有新的照片书制作工单，快去看看吧！\n", "#999")
			.add("keyword1", "照片书制作", "#ff0000")
			.add("keyword2", orderid, "#999")
			.add("keyword3", username, "#999")
			.add("keyword4", phone, "#999")
			.add("keyword5", money, "#999")
			.add("remark", "\n感谢您的使用！", "#999")
			.build());
		System.out.println(result);
	}
	
	
	/**
	 * 宝宝请假通知老师班主任
	 * @param touser
	 * @param student_name 学生姓名
	 * @param phone 家长电话
	 * @param duration 请假时间
	 * @param remark 请假原因
	 * @param addtime 请假提交时间
	 */
	public static void sendTemplateMsgOfQingjia(String touser, String student_name, String phone, String duration, String remark, String addtime) {
		if(StringUtils.isEmpty(touser)) {
			return;
		}
		// 模板消息，发送测试：pass
		ApiResult result = TemplateMsgApi.send(TemplateData.New()
			// 消息接收者
			.setTouser(touser)
			// 模板id
			.setTemplate_id("keSWpFm7Pzc9JjFyjpXBA7M5hozzojq_bdLJ_YZ-Rik")
			.setUrl("")
			// 模板参数
			.add("first", "宝宝请假提醒！\n", "#999")
			.add("keyword1", addtime, "#999")
			.add("keyword2", student_name, "#ff0000")
			.add("keyword3", phone, "#999")
			.add("keyword4", duration, "#999")
			.add("keyword5", remark, "#999")
			.add("remark", "\n感谢您的使用！", "#999")
			.build());
		System.out.println(result);
	}
	
	/**
	 * 点名
	 * @param touser
	 * @param student_name
	 * @param teacher_name
	 * @param addtime
	 */
	public static void sendTemplateMsgOfDianming(String touser, String student_name, String teacher_name, String addtime) {
		if(StringUtils.isEmpty(touser)) {
			return;
		}
		// 模板消息，发送测试：pass
		ApiResult result = TemplateMsgApi.send(TemplateData.New()
			// 消息接收者
			.setTouser(touser)
			// 模板id
			.setTemplate_id("84Ii-xwoepoipurHwWmmStSxYGvvywuDkoonK9K8er8")
			.setUrl("")
			// 模板参数
			.add("first", "您好，宝宝"+student_name+"点名成功！\n", "#999")
			.add("keyword1", student_name+"点名成功", "#999")
			.add("keyword2", addtime, "#999")
			.add("remark", "\n点名老师："+teacher_name+"，感谢您的信任！", "#999")
			.build());
		System.out.println(result);
	}
	
	/**
	 * 提现申请通知管理员或负责人员
	 * @param touser
	 * @param username 昵称
	 * @param money 金额
	 * @param type 提现方式
	 * @param datetime 时间
	 */
	public static void sendTemplateMsgOfTxsq(String touser, String username, String money, String type, String datetime) {
		if(StringUtils.isEmpty(touser)) {
			return;
		}
		// 模板消息，发送测试：pass
		ApiResult result = TemplateMsgApi.send(TemplateData.New()
			// 消息接收者
			.setTouser(touser)
			// 模板id
			.setTemplate_id("_cJ7LZY_UGqEpiYiaue6EJI7pGVZE941EEBUFPO1TQg")
			.setUrl("")
			// 模板参数
			.add("first", "您好，收到新的提现申请！\n", "#999")
			.add("keyword1", username, "#999")
			.add("keyword2", datetime, "#999")
			.add("keyword3", money, "#ff0000")
			.add("keyword4", datetime, "#999")
			.add("remark", "\n感谢你的使用。", "#999")
			.build());
		System.out.println(result);
	}
	
	
	/**
	 * 通知消息提醒
	 * @param touser
	 * @param username
	 * @param money
	 * @param type
	 * @param datetime
	 * 
	 * {{first.DATA}}
		消息类型：{{keyword1.DATA}}
		发送状态：{{keyword2.DATA}}
		发送时间：{{keyword3.DATA}}
		发送对象：{{keyword4.DATA}}
		{{remark.DATA}}
	 * 
	 */
	public static void sendTemplateMsgOfTongzhi(String touser, String username, String type, String content, String datetime) {
		if(StringUtils.isEmpty(touser)) {
			return;
		}
		// 模板消息，发送测试：pass
		ApiResult result = TemplateMsgApi.send(TemplateData.New()
			// 消息接收者
			.setTouser(touser)
			// 模板id
			.setTemplate_id("Ou2jB_Bs-apfCKby4QmL7VLk-n65rg51lc4gmcvPJjE")
			.setUrl("")
			// 模板参数
			.add("first", "您好，收到新的消息！\n", "#999")
			.add("keyword1", type, "#999")
			.add("keyword2", "成功", "#999")
			.add("keyword3", datetime, "#ff0000")
			.add("keyword4", username, "#999")
			.add("remark", "\n消息内容："+content, "#999")
			.build());
		System.out.println(result);
	}
	
	
	
}
